package com.ztesoft.web.filecommon.db.dao.mapper;

import com.ztesoft.web.filecommon.db.arg.FileDirectoryDefineArg;
import com.ztesoft.web.filecommon.db.po.FileDirectoryDefinePO;

import java.math.*;
import java.util.*;

import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

public interface IFileDirectoryDefineMapper {
    
    List<Integer> countByArg(FileDirectoryDefineArg arg);

    List<FileDirectoryDefinePO> selectByArg(FileDirectoryDefineArg arg);

    FileDirectoryDefinePO selectByPrimaryKey(Integer id);

    List<FileDirectoryDefinePO> selectByArgAndPage(FileDirectoryDefineArg arg, RowBounds rowBound);

    int insert(FileDirectoryDefinePO record);

    int insertSelective(FileDirectoryDefinePO record);

    int insertBatch(@Param("list") List<FileDirectoryDefinePO> records);

    int updateByArgSelective(@Param("record") FileDirectoryDefinePO record,
            @Param("arg") FileDirectoryDefineArg arg);

    int updateByArg(@Param("record") FileDirectoryDefinePO record,
            @Param("arg") FileDirectoryDefineArg arg);

    int updateByPrimaryKeySelective(FileDirectoryDefinePO record);

    int updateByPrimaryKey(FileDirectoryDefinePO record);
    
    int deleteByArg(FileDirectoryDefineArg arg);
    
    int deleteByPrimaryKey(Integer id);
    
    List<FileDirectoryDefinePO> selectPOBySourceDataId(Integer sourceDataId);
    
}